package com.wsoft.hr.pm.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.wsoft.hr.pm.entity.HrPmTargetGroupEntity;
import com.wsoft.hr.pm.query.target.group.TargetGroupInsertQuery;
import com.wsoft.hr.pm.query.target.group.TargetGroupTreeQuery;
import com.wsoft.hr.pm.query.target.group.TargetGroupUpdateQuery;
import com.wsoft.hr.pm.vo.target.group.TargetGroupTreeVO;

import java.util.List;

/**
 * <p>
 * 指标分组 服务类
 * </p>
 *
 * @author Z001
 * @since 2025年02月17日 15:07:36
 */
public interface IHrPmTargetGroupService extends IService<HrPmTargetGroupEntity> {

    /**
     * 新增分组
     * @param query
     * @return
     */
    boolean insertGroup(TargetGroupInsertQuery query);

    /**
     * 编辑分组
     * @param query
     * @return
     */
    boolean updateGroup(TargetGroupUpdateQuery query);

    /**
     * 分组详情
     * @param id
     * @return
     */
    HrPmTargetGroupEntity get(Long id);

    /**
     * 删除分组
     * @param id
     * @return
     */
    boolean delete(Long id);

    /**
     * 获取分组树
     * @param query
     * @return
     */
    List<TargetGroupTreeVO> tree(TargetGroupTreeQuery query);
}
